package poo.biblioteca.vistas.lectores;


import biblioteca.entidades.Lector;
import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;

public class TbmLector extends AbstractTableModel {

    private ArrayList<Lector> lectores;

    public TbmLector(ArrayList<Lector> lectores) {
        this.lectores = lectores;
    }

    @Override
    public int getRowCount() {
        return lectores.size();
    }

    @Override
    public int getColumnCount() {
        return 3;
    }

    @Override
    public String getColumnName(int column) {
        String[] nombresColumna = new String[]{"Id Lector", "Nombres", "Apellidos"};
        return nombresColumna[column];
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        switch (columnIndex) {
            case 0:
                return lectores.get(rowIndex).getIdLector();
            case 1:
                return lectores.get(rowIndex).getNombres();
            case 2:
                return lectores.get(rowIndex).getApellidos();
        }
        return null;
    }

    public Lector getLectorEnFila(int filaSeleccionada) {
        return lectores.get(filaSeleccionada);
    }

    void eliminar(int selectedRow) {
        lectores.remove(selectedRow);
        fireTableDataChanged();
    }

    void modificar(int selectedRow, Lector nuevoLector) {
        lectores.set(selectedRow, nuevoLector);
        fireTableDataChanged();
    }
}
